# -*- coding: utf-8 -*-
# @Time    : 2021/12/14 16:08
# @Author  : TangDagui
# @Email   : 3297364807@qq.com
# @File    : PythonDome.py
# @Software: PyCharm

import pandas as pd

df = pd.read_excel(r"超市营业额2.xlsx")  # 与代码在同一目录

# 1.下标在[5,10]区间的行
print("------第一题-------")
print(df.values[5:10])

# 2.下标为5的行
print("------第二题-------")
print(df.values[5:6])

# 3.行下标为[3,5,10],列下标为[0,1,4]的数据
print("------第三题-------")
print("{0}\t{1}\t\t{2}".format(df.iloc[3, 0], df.iloc[5, 1], df.iloc[10, 4]))

# 4.行下标为[3,5,10],列标签为["工号","姓名","交易额"]
print("------第四题-------")
data = df.loc[[3, 5, 10], ['工号', '姓名', '交易额']].values  # 读取3、5/7行的工号、姓名以及交易额列的值，这里需要嵌套列表
print(data)

# 5.行下标为3，列下标为0的数据
print("------第五题-------")
print("行下标为3，列下标为0的数据:{0}".format(df.iloc[3, 0]))

print("------第六题-------")
# 6.行下标为3，列标签为"工号"的数据
data = df.loc[3, '工号']
print("行下标为3，列标签为工号的数据:{0}".format(data))

print("------第七题-------")
# 7.交易额高于1700元的数据
seven = []
for i, trade in enumerate(df['交易额']):
    if trade > 1700:
        seven.append(df.iloc[i].values)
print(seven)

print("------第八题-------")
# 8.下午班的数据
eight = []
for i, date in enumerate(df['时段']):
    if date == '14：00-21：00':  # 下午时间段
        eight.append(df.iloc[i].values)
print(eight)

# 9.下午班交易额数据
print("------第九题-------")
nine = []
for i, date in enumerate(df['时段']):
    if date == '14：00-21：00' and str(df['交易额'][i]) != "nan":  # 下午时间段 交易额有几行没有数据 会返回nan 此时相加会变成nan 所以不让nan进入
        nine.append(df['交易额'][i])
print(nine)

# 10.下午班交易总额
print("------第十题-------")
tenSum = 0.0
for i, date in enumerate(df['时段']):
    if date == '14：00-21：00' and str(df['交易额'][i]) != "nan":  # 下午时间段 交易额有几行没有数据 会返回nan 此时相加会变成nan 所以不让nan进入
        tenSum += df['交易额'][i]
print("下午班的交易总额:{0}".format(tenSum))

# 11.张三和李四2人的交易总额
print("------第十一题-------")
elevenSum = 0.0
for i, name in enumerate(df['姓名']):
    if name in ['张三', '李四'] and str(df['交易额'][i]) != "nan":  # 交易额有几行没有数据 会返回nan 此时相加会变成nan 所以不让nan进入
        elevenSum += df['交易额'][i]
print("张三和李四2人的交易总额:{0}".format(elevenSum))

# 12.交易额在800-850的记录
print("------第十二题-------")
twelve = []
for i, trade in enumerate(df['交易额']):
    if trade <= 850 and trade >= 800:
        twelve.append(df.iloc[i].values)
print(twelve)